#include <bits/stdc++.h>
using namespace std;
int n;
long long a[1000005];
int mod = 1000000007;
int main() {
  cin >> n;
  a[0] = 1; // 边界条件
  a[1] = 1; // 边界条件
  a[2] = 2; // 边界条件
  a[3] = 4; // 边界条件
  for (int i = 4; i <= n; i++) {
    a[i] = (a[i - 1] + a[i - 2] + a[i - 3] + a[i - 4]) % mod; // 状态转移
  }
  cout << a[n]; // 输出结果
  return 0;
}